The present invention relates generally to DC linear motors and more particularly to a DC linear motor which linearly moves an optical head or an image scanner. To record/reproduce information with high density on/from an optical disk or to scan an image with high density, it is necessary to move an optical head or a scanner with a high degree of precision. In general, an optical head or a scanner is moved as a movable part by a motor. In addition, position data and speed data of the movable part is needed to control the driving of the movable part.
Japanese Laid-Open Patent Application No. 59-122357 discloses a DC linear motor that drives a movable part, with more precision than a pulse linear motor, by means of a linear encoder for detecting a position and a speed of the moving part, the linear encoder including a light-emitting element, a declined reflecting surface, and a light-receiving element. However, the DC linear motor has the following disadvantages. The linear encoder is expensive and the motor is accordingly expensive. In addition, it is difficult to properly assemble the linear encoder into the motor. Moreover, a coil included in the motor becomes hot, when energized, and eventually burns out. Although it is conceivable to detect a temperature of the coil using electricity passing through it, and control the driving of the movable part based on the detected temperature, as disclosed in Japanese Laid-Open Utility Model No. 59-95789 and Japanese Patent Application No. 2-179896, the temperature of the coil cannot be precisely determined since electricity passing through the coil is calculated from a resistance of the coil, which varies nonlinearly with the temperature. Consequently, it is difficult to drive the movable part with a high degree of precision.